package com.example.demo.entity;

import com.baomidou.mybatisplus.annotation.IdType;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.Version;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;

import java.io.Serializable;

import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 *
 * </p>
 *
 * @author ld&zjw
 * @since 2024-01-28
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class SysSubject implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 题目id
     */
    private Integer questionId;

    /**
     * 题目名称
     */
    private String questionName;

    /**
     * 题目类型：（递归、二叉树）
     */
    private String questionType;

    /**
     * 题目内容
     */
    private String questionContent;

    /**
     * 通过数量
     */
    private Integer questionAccept;

    /**
     * 提交数量
     */
    private Integer questionSubmit;

    /**
     * 通过率
     */
    @TableField(exist = false)
    private String passingRate;

    /**
     * 内存限制
     */
    private String questionMemLimit;

    /**
     * 时间限制
     */
    private String questionTimeLimit;

    /**
     * 评测方式
     */
    private String questionTestWay;

    /**
     * 命题人
     */
    private String questionProposer;

    /**
     * 输入
     */
    private String questionInput;

    /**
     * 输出
     */
    private String questionOutput;

    /**
     * 样例输入
     */
    private String questionSampleInput;

    /**
     * 样例输出
     */
    private String questionSampleOutput;

    /**
     * 题目来源
     */
    private String questionSource;

    /**
     * 备用字段1
     */
    private String spare1;

    /**
     * 备用字段2
     */
    private String spare2;

    /**
     * 备用字段3
     */
    private String spare3;

    /**
     * 备用字段4
     */
    private String spare4;

    /**
     * 备用字段5
     */
    private String spare5;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;

    private String input1;

    private String output1;

    private String input2;

    private String output2;

    private String input3;

    private String output3;

    private String input4;

    private String output4;

    private String input5;

    private String output5;

}
